package com.platform.system.service;

import com.platform.common.core.domain.AjaxResult;
import com.platform.common.core.page.TableDataInfo;
import com.platform.system.domain.dto.device.ModelAppInfoDto;
import com.platform.system.domain.vo.device.ModelAppInfoVo;

import java.util.List;

/**
 * @author Huangkai
 */
public interface ISysModelAppInfoService {

    /**
     * 查询大模型配置信息
     * @param modelAppInfoVo
     * @return
     */
    TableDataInfo selectModelAppInfoList(ModelAppInfoVo modelAppInfoVo);

    /**
     * 客户端根据类型查询大模型
     * @param modelAppInfoVo
     * @return
     */
    List<ModelAppInfoDto> selectModelAppInfoListByType(ModelAppInfoVo modelAppInfoVo);

    /**
     * 查询详情
     * @param uid
     * @return
     */
    ModelAppInfoDto selectModelAppInfo(String uid);

    /**
     * id列表查询
     * @param uidList
     * @return
     */
    List<ModelAppInfoDto> selectModelAppInfoByUidList(List<String> uidList);

    /**
     * 插入大模型配置信息
     * @param modelAppInfoVo
     * @return
     */
    AjaxResult insertModelAppInfo(ModelAppInfoVo modelAppInfoVo);

    /**
     * 修改状态
     * @param modelAppInfoVo
     * @return
     */
    AjaxResult updateModelAppInfoStatus(ModelAppInfoVo modelAppInfoVo);

    /**
     * 删除
     * @param modelAppInfoVo
     * @return
     */
    AjaxResult deleteModelAppInfo(ModelAppInfoVo modelAppInfoVo);

    /**
     * 修改
     * @param modelAppInfoVo
     * @return
     */
    AjaxResult updateModelAppInfo(ModelAppInfoVo modelAppInfoVo);

    /**
     * 测试大模型连通性
     * @param modelAppInfoVo
     * @return
     */
    AjaxResult isModelCollection(ModelAppInfoVo modelAppInfoVo);

}
